import request from '../utils/request'

// 获得指定时间段内的所有账单里的所有账单列表 时间格式 yyyy-mm-dd
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
export function getBillListForRange (params: unknown) {
    return request({
        url: '/bill/list-range',
        method: 'get',
        params
    })
}

// 创建账单，创建成功返回Bill对象，
// 若没有分享账本，可以使用个人的公共类和本账本内的类。
// 类id传，大类id或者小类id都行，后台会自动补全。 
// 如果本账本分享，则只能使用本账本内的大类和小类
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
export function createBill (data: unknown) {
    return request({
        url: '/bill/create',
        method: 'post',
        data
    })
}

// 获得指定时间段内收益或者支出 
// 时间格式 yyyy-mm-dd
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
export function getSumRange (params: unknown) {
    return request({
        url: '/bill/sum-range',
        method: 'get',
        params
    })
}

// 修改账单，将需要修改的id传入
// 其他需要修改的属性传入就行，不需要修改的属性不用填
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
export function updateBill(data: unknown) {
    return request({
        url: '/bill/update',
        method: 'post',
        data
    })
}

// 指定id获得账单，若非自己的，返回空
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
export function getBillDetail(params:unknown) {
    return request({
        url: '/bill/',
        method: 'get',
        params
    })
}

// 删除账单
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
export function deleteBill(params: unknown) {
    return request({
        url: '/bill/delete',
        method: 'get',
        params
    })
}
